package com.xhm.bbs.pojo.mapper;

import com.xhm.bbs.pojo.dto.BbsAddDTO;
import com.xhm.bbs.pojo.dto.BbsUpdateDTO;
import com.xhm.bbs.pojo.po.BbsPO;
import com.xhm.bbs.pojo.vo.BbsShowVO;
import org.mapstruct.Mapper;
import org.mapstruct.MappingTarget;
import org.mapstruct.factory.Mappers;

/**
 * 【帖子】映射
 *
 * @author mrj
 * @date 2020/01/01
 */
@Mapper
public interface BbsMapper {

    BbsMapper INSTANCE = Mappers.getMapper( BbsMapper.class );

    /**
     * addDTO映射po
     *
     * @param bbsAddDTO
     * @return
     */
    BbsPO fromAddDTO(BbsAddDTO bbsAddDTO);

    /**
     * 将updateDTO中的值设置到po
     *
     * @param bbsPO
     * @param bbsUpdateDTO
     */
    void setUpdateDTO(@MappingTarget BbsPO bbsPO, BbsUpdateDTO bbsUpdateDTO);

    /**
     * po映射showVO
     *
     * @param bbsPO
     * @return
     */
    BbsShowVO toShowVO(BbsPO bbsPO);


}

